perm filename DOWNLO.ME[UP,DOC]1 blob
sn#778471 filedate 1984-12-03 generic text, type T, neo UTF8
The program DOWNLOAD can be used to download a text "segment" (a
string of characters from a file) to your terminal in image mode,
for instance to set up some programmable keys. The general form
of a file segment is this (a file may contain many of these):
DOWNLOAD/name: 8 { <segment text> }
where: "DOWNLOAD" must occur at the beginning of a line,
the segment name (with slash) is optional (dots and hyphens are OK),
the "8" is optional and indicates 8-bit output instead of even parity,
the curly braces delimit the segment text.
The segment text is in E macro format (uses "⊗" as an escape character, "α" to
turn on the parity bit -- see below for details). If you want even-parity
characters output to the terminal, then omit the optional "8" after the colon.
To specify which segment is to be down-loaded by this program, type a
segment-name and/or @<file>. The default PPN for files is your logged-in PPN
(OPTION.TXT is recommended). Here are some examples and what they get you:
<cr> first DOWNLOAD segment in login-area file OPTION.TXT
DM segment DOWNLOAD/DM: in login-area file OPTION.TXT
H-19 @DOWN segment DOWNLOAD/H-19: in login-area file DOWN.TXT
/AMB.E DOWN. segment DOWNLOAD/AMB.E: in login-area file DOWN.
@SYS: first DOWNLOAD segment (named or not) in SYS:OPTION.TXT
- - - - - - - -
Invoking DOWNLOAD
The program can be (or soon can be) run with the DOWNLOAD monitor command,
or explicitly with the R command. Examples, matching those above:
DOWNLO
DOWNLOAD DM
R DOWNLOAD;H-19 @DOWN
R DOWNLO;/AMB.E DOWN.
DOWN@SYS:
- - - - - - - -
LOGIN options with DOWNLOAD
You can have LOGIN automatically download a character string by using
the DOWNLOAD LOGIN option:
LOGIN:DOWNLOAD 8 { <segment text> }
or with a display suboption which will have effect only if the display
option is effective:
LOGIN:FDISPLAY=<name>(DOWNLOAD 8 { <segment text> })
As in the DOWNLOAD program, the segment text is interpreted in E macro
format (and the "8" is optional, etc.).
These LOGIN options will not output anything on a DD or III, but the
DOWNLOAD program will output a DD or III -- this can be used to test
out your string definitions on a DD, say, before trying them on the
terminal of interest. On DDs and IIIs, the result of "downloading"
is just typing out the characters on the terminal.
- - - - - - - -
Character represention in segment text: E Macro Format
The E macro-format text representation allows 9-bit characters to be
represented in ordinary 7-bit text by making use of three special escape
characters and by ignoring several formatting characters. Since DOWNLOAD
only needs 8-bit characters (as that's what terminals generally accept),
the escape character ("β") which normally turns on the 9th bit is not
used by DOWNLOAD.
The ignored formatting characters can be used freely to make the
download file more readable. The ignored characters are:
TAB,ALT,CR,LF,BS,VT,FF, and NULL.
One character is treated specially as the end of the segment:
"}"
The two special escape characters used by DOWNLOAD are:
"⊗" and "α"
The "α" is used to turn on the 8th bit (parity bit) of the
following character, and the "⊗" (circle-x) is used to specify
output of a character that otherwise couldn't be output (one of
the ignored characters, the escapes, or "}").
To represent any of the ignored characters or any of the three
special characters, a two-character sequence is used, namely, the
character "⊗" (circle-x) followed by a character specifying which
character you want output. Actually, there are two possible
two-character sequences (the standard and the alternate) for most
special output characters, as indicated by the table below. The
alternate sequences are perhaps a bit more easily identifiable, as
they are fairly mnemonic.
Representations Corresponding output character
Standard Alternate
⊗⊗ ⊗⊗ ⊗ circle-x
⊗; ⊗; Ignore text from here to end of line (to CR, LF or FF).
⊗⊂ ⊗⊂ Ignore text from here to first right-horseshoe (⊃).
⊗= ⊗T TAB horizontal tab
⊗≠ ⊗A ALT altmode
⊗↔ ⊗C CR carriage return
⊗↓ ⊗L LF linefeed
⊗↑ ⊗B BS backspace (that is, RUBOUT: 177 octal, NOT 010)
⊗← ⊗V VT vertical tab
⊗→ ⊗F FF formfeed
⊗α ⊗X α alpha
⊗} ⊗R } right brace (normally taken as end of segment)
⊗0 ⊗N NULL null character (000)
α ⊗1 Add parity bit to next character
The escape sequences ⊗; and ⊗⊂ can be used for putting comments
into a segment without having the comments taken as part of the
text to be output. The form ⊗; allows you to put a comment at the
end of a line, and the form ⊗⊂ allows you to have partial-line or
multi-line comments. Note that since TABs are ignored, you can
use them to set off comments or actual output text from other text
in a file.
N.B.: There is no SAIL to ASCII character set conversion done on output,
so what gets output to the terminal is exactly the SAIL character set.
This means that "⊗A" (altmode) will transmit an octal 175 (which is really
"}" in ASCII), and "≠" will transmit an 033, which is the ASCII character
ESC. Similarly, "λ" will transmit an 010 (ASCII BS), and "⊗B" (BS) will
send a 177 (SAIL BS character).